package com.hospital.dao;

import com.hospital.model.Doctor;
import java.sql.SQLException;

/**
 * 医生数据访问接口
 * 定义了对医生信息进行数据库操作的方法
 */
public interface DoctorDao {
    /**
     * 根据医生ID查询医生信息
     * @param doctorId 医生ID
     * @return 医生信息对象，如果不存在返回null
     * @throws SQLException 数据库操作异常
     */
    Doctor findByDoctorId(String doctorId) throws SQLException;

    /**
     * 更新医生信息（电话和密码）
     * @param doctorId 医生ID
     * @param newPhone 新电话号码
     * @param newPassword 新密码
     * @return 更新是否成功
     * @throws SQLException 数据库操作异常
     */
    boolean updateDoctorInfo(String doctorId, String newPhone, String newPassword) throws SQLException;

    /**
     * 添加新医生
     * @param doctor 医生信息对象
     * @return 添加是否成功
     * @throws SQLException 数据库操作异常
     */
    boolean addDoctor(Doctor doctor) throws SQLException;

    /**
     * 检查医生ID是否已存在
     * @param doctorId 医生ID
     * @return 是否存在
     * @throws SQLException 数据库操作异常
     */
    boolean isDoctorIdExists(String doctorId) throws SQLException;
} 